This page last changed on Jul 13, 2005 by jcass.

General Format

Header (see http://www.palmos.com/dev/support/docs/fileformats/Intro.html#970318 for more info)

Name of your PDB

Attributes

  • Read Only = 2
  • Application Info Block Dirty = 4
  • This database should be backed up by the Backup Conduit using SlowSync = 8
  • Okay to install a newer version of this database = 16
  • Reset after this database is installed = 32
  • This database should not be copied to = 64
  • This database is used for file stream implementation = 128
    The given PDB's attribute byte is the sum of the attributes that apply to it

Creation Date

Modification Date

Last Backup Date

Modification Number

Application Info ID

Sort Info ID

Type

Creator ID

Unique ID Seed

Record List

  • Each record is listed by the byte at which it starts, followed by its attribute byte, followed by its unique ID seed
  • The attributes are as follows:
  • The record was deleted between the last sync and this one = 128
  • The record was modified between the last sync and this one (this is used when the conduit determines whether or not to do a FastSync) = 64
  • The record is private = 16

Record Entries

  • Here each record is listed sequentially with no other information about it

Syncing Process

User presses HotSync Button

The PC does the following:

  1. Reads user ID and validates user
  2. Locates user's data
  3. Reads system and state info from handheld
  4. WINDOWS ONLY: Calls notifier to tell desktop application that syncing is about to begin

The palm does the following:

  1. HotSync process starts
  2. Sends a signal to the desktop

"Connecting with desktop"

The PC does the following:

  1. MACINTOSH ONLY: Retrieves the list of databases and applications to be processed from the handheld
  2. WINDOWS ONLY: Retrieves creator ID info for each application on the handheld
  3. If no conduit is installed for a given application, the backup bit is set on that database

"Synchronizing"

The PC does the following:

  1. Calls the Install conduit to install any applications or databases that have been queued on the desktop for this purpose
  2. MACINTOSH ONLY: Runs each conduit in the Conduits folder by calling specific entry points including: GetConduitName, OpenConduit, or OpenConduitCarbon
  3. WINDOWS ONLY: Runs each conduit in the list in priority order (low priority to high priority) by calling specific entry points
  4. WINDOWS ONLY: Calls the Install conduit again to handle any installations that were generated by other conduits (HotSync Manager 3.01 or later)
  5. Calls the backup conduit to copy any databases that are in the backup list

Completion Message(s)

The PC does the following:

  1. Updates synchronization information, including the sync time and User ID on the handheld
  2. WINDOWS ONLY: Calls notifiers to tell desktop applications that the synchronization has been completed
  3. If any of the conduits added messages to the log, the HotSync Manager displays a message to the user who can then examine those log entries

The palm does the following:

  1. Notifies handheld applications whose databases were modified. Also notifies any applications just installed that the HotSync Manager is completed.

PDB Searching

Somewhere near the bottom of most handhelds there is a small magnifying glass icon. When the user taps this icon they are prompted for a string. Upon entering this string and hitting search, the handheld passes a launch code (specifically sysAppLaunchCmdFind) to each of its applications. If the application does not have a sysAppLaunchCmdFind method (like ours) then the find function just moves on to the next app. In order to have our databases searchable by this function we would need to include a method to handle the launch code sysAppLaunchCmdFind. This looks difficult based on what I've found, but if you wanted to do it here is a place to get started:

http://www.palmos.com/dev/support/docs/palmos/Find.html#995797

Good luck!

Document generated by Confluence on Jan 27, 2014 16:43